The present invention relates to area gradation processing for image data of a multi-valued or multi-level image, such as a monochrome halftone image or a color image. The present invention also relates to an ink jet image forming device which forms an image by ejecting ink dots on paper through an ink jet head installed on a carriage that scans in the direction substantially perpendicular to the paper conveyance direction, and more particularly, to an ink jet image forming device that records data in a single pass method.
Area gradation processing is used to represent a gray-scale or halftone image on a display, a printer, or a plotter capable of displaying with only two values, 0:OFF and 1:ON. This area gradation processing, widely known, refers to the processing based on a method for representing gray levels of an image by changing the ratio of ON dots to all dots in a relatively small unit area of an image. In general, an N*N matrix (where, xe2x80x9c*xe2x80x9d indicates a multiplication operator) produces N*N+1 gray levels. This is because the matrix gives unit areas composed of respectively N*N+1 different ON dots, from 0 to N*N. For example, an 8*8 matrix gives 65 gray levels. The larger value of N gives more gray levels but requires more memory capacity.
A 4*4 matrix or an 8*8 matrix is usually used for an image forming device such as a printer or a plotter that analyzes vector data. Recently, some image forming devices use a 128*128 matrix.
Regarding dot arrangement patterns in the matrix, dot distribution types such as a Bayer type and dot concentration types such as an eddy type and a mesh type are known. It is said that the dot distribution type is better in resolution and that dot concentration type is better in linear reproducibility of gradation.
FIG. 5 shows an 8*8 Bayer type dither matrix. Numeric values, 0 to 252 in increments of 4, are assigned to 64 cell positions, and each numeric value is used as a threshold for binarization or conversion from multi-level data to binary (or bi-level) data.
Normally, one vector is represented by the coordinates of the starting-end point and the terminating-end point, line width, end-point edge shape, gray level, and so on. Therefore, a dithering matrix cannot be applied directly to vector data unlike to image data. To represent the gray level of vector data, it is necessary to form a mask matrix having an ON/OFF dot pattern corresponding to a density (gray level) value of the vector based on the dither matrix as shown in FIG. 5.
FIG. 6 shows a mask matrix for density of 50%. In the case of the dither matrix shown in FIG. 5, the mask matrix is formed in the following manner. That is, if the density value of 100% is 255, then the density value of 50% is 127. Thus, the cells in the matrix shown in FIG. 5 whose values are 127 or smaller are set to ON with the cells whose values are larger than 127 set to OFF. In the example shown in FIG. 5, black (hatching) cells indicate ON and white cells indicate OFF.
FIG. 7 shows a mask matrix for density of 33%. In this case, because the density value is 85, the cells whose values ranges from 0 to 84 are set to ON with the other cells set to OFF. Similarly, FIG. 8 shows a mask matrix for density of 66%.
Referring to FIG. 22, how to represent halftone (shade) of a vector will be described. The figure to the left of the arrow in FIG. 22 indicates a vector represented by data such as starting-end and terminating-end points. The figure to the right of the arrow indicates the output result of the vector data for density of 50%. To convert vector data to halftone raster data in this way, the mask matrix described above is repetitively tiled (close to each other) beginning with the anchor corner (filling base point) as shown in FIG. 19 and, when vector data is to be converted to raster data, the raster pixels for which no gray level is considered (fully ON) are ANDed with the tiled ON/OFF dot pattern to create raster data.
FIG. 19 shows a mask matrix tiling pattern for density of lower than 2% as a typical low density. The example in the figure is to show whether or not data of a vector of one dot in line width generates ON dots when the density is lower than 2%. A mask matrix for density lower than 2% but not 0% is shown in FIG. 14. A pattern obtained by tiling this mask matrix is the mask matrix tiling pattern shown in FIG. 19. Line A shown in FIG. 19, one dot in width, is a horizontal line that lies on ON dots of the tiling pattern, with one ON dot generated every eight dots. However, lines B and C, each one dot in width, generate no ON dots at all and have their vector data fully lost because of their positions and inclination angles.
Recently, an increase in computer performance makes available a variety of graphics and CAD application software and diversifies color processing. Normally, when a print driver or a plotter driver creates vector data, the driver generates pen colors and density values and transfers the data to the printer or plotter. At this time, a low density, if set by the application, may cause vectors to be fully lost as described above.
It is an object of the present invention to provide a highly reliable image processing method and an image forming device that prevent vectors from being fully lost even in a halftone image of a relatively low density.
In an image forming device using an ink jet recording method, a plurality of ink-eject nozzles are usually arranged in the direction substantially perpendicular to the direction in which the recording head scans. Therefore, one carriage scan forms a band of an image area (band). The higher the scan speed is, the higher is the print speed. This is because data is usually printed based on the output pulses from a unit such as a linear scale sensor which is provided to detect the carriage position at a predetermined resolution (for example, 360 DPI) and because the frequency (head driving frequency or dot frequency) of the output pulses is determined according to the carriage scan speed.
An increase in print speed depends in part on whether or not the speed of the ink ejection from the ink jet head can keep up with an increase in print speed. If the head driving frequency is increased when the ink supply is insufficient, the print speed is increased but ink is not ejected properly with the result that some parts of the image cannot be printed. This significantly degrades the print quality.
To prevent this condition, there is a technology that reduces the head driving frequency (to the speed compatible with ink supply speed) only for a region within which the printing is performed and increases the head driving frequency only for non-print regions. However, to increase the print speed, it is preferable that the head driving speed is increased even in the print region.
It is another object of the present invention to provide an ink jet image forming device having a high-speed print mode that increases the head driving frequency even during printing in order to increase the print speed.
It is still another object of the present invention to provide a single-pass ink jet image forming device, wherein an interpreter in the ink jet image forming device thins out print dots, when forming fill patterns or thick-line shade patterns, to prevent ink dots from being ejected successively in the head scanning direction in order to allow ink to be sufficiently supplied even when the head driving speed is increased.
It is yet another object of the present invention to provide a single-pass ink jet image forming device capable of reducing the loss of thin lines in a thinning operation.
An image processing method according to the present invention is for use in an area gradation method that represents a halftone image with binary image data, comprising the steps of rearranging an N*N mask matrix, at least with respect to relatively low density, on a row and column basis, (N*Nxe2x88x921) times to generate (N*Nxe2x88x921) number of N*N mask matrices; combining the (N*Nxe2x88x921) number of N*N mask matrices with the original N*N mask matrix to form an (N*N)*(N*N) mask matrix; and generating binary halftone image from multi-level image data via the (N*N)*(N*N) mask matrix to prevent the halftone image from becoming all xe2x80x9c0:OFFxe2x80x9d.
The halftone image is, for example, a halftone vector.
Even with a mask matrix for a low density image, the method according to the present invention reduces the problem of losing an entire vector of that density.
The image processing method may further comprise the steps of rearranging the (N*N)*(N*N) mask matrix on a row and column basis; and, via the resultant (N*N)*(N*N) mask matrix, generating binary halftone image from multi-level image data. This eliminates a regularity in the arrangement of ON dots in the (N*N)*(N*N) mask matrix, further reducing the problem of a vector being fully lost.
The image processing method may further comprise the step of checking if the binary image data obtained for a given halftone image via the N*N mask matrix for the density of the image becomes all xe2x80x9c0:OFFxe2x80x9d, wherein, if the binary image becomes all xe2x80x9c0:OFFxe2x80x9d, the (N*N)*(N*N) mask matrix is used. If all binary data is not xe2x80x9c0:OFFxe2x80x9d, then the N*N mask matrix may be used for binarization as in the conventional method. When the conventional method is used, there is no need to generate the (N*N)*(N*N) mask matrix and therefore the memory capacity for storing the mask matrices is saved.
The present invention also provides the (N*N)*(N*N) mask matrix generated as described above.
The present invention also provides a device on which the method described above is embodied. The device comprises analysis means for analyzing image data including vector data and data for setting a vector density (shade), means for converting the vector data to raster data after the analysis using an area gradation method that represents a halftone image with binary image data, and output means for outputting the raster data, the image forming device comprising means for generating an N*N mask matrix by applying a density value of a given halftone image to a predetermined dither matrix as a result of the analysis of the analysis means; means for generating (N*Nxe2x88x921) number of N*N mask matrices by rearranging the N*N mask matrix, on a row and column basis, (N*Nxe2x88x921) times for a halftone image at least relatively low in density while maintaining the gray level of the N*N mask matrix and, at the same time, for combining the (N*Nxe2x88x921) number of N*N mask matrices with the original N*N mask matrix to form an (N*N)*(N*N) mask matrix; and means for.generating a binary halftone image from multi-level image data via the (N*N)*(N*N) mask matrix for the halftone image of at least relatively low in density.
This device may further comprise condition judging means for judging if the binary image obtained for a given halftone image via the N*N mask matrix for the density of the image becomes all xe2x80x9c0:OFFxe2x80x9d, wherein, if the binary image becomes all xe2x80x9c0:OFFxe2x80x9d, then the (N*N)*(N*N) mask matrix is used.
The condition judging means makes a judgement based on a gray (shade) value and a line width of the vector.
Alternatively, the condition judging means makes a judgement based on an inclination and/or the line length of the vector.
The means for generating the (N*N)*(N*N) mask matrix may further rearrange the generated (N*N)*(N*N) mask matrix on a row and column basis to generate a final (N*N)*(N*N) mask matrix.
Instead of using the means for generating the N*N mask matrix, non-volatile storage means may be provided for storing N*N mask matrices generated by that means for different densities. For example, (N*N+1) N*N matrices may be created as a table and stored in a non-volatile memory in advance, and the table may be used instead of forming an N*N matrix from the N*N dither matrix.
Alternatively, instead of using the means for generating the (N*N)*(N*N) mask matrix, non-volatile storage means may be provided for storing (N*N)*(N*N) mask matrices generated by that means for different densities. For example, (N*N+1) (N*N)*(N*N) matrices may be created as a table and stored in a non-volatile memory in advance, and the table may be used instead of forming an (N*N)*(N*N) matrix from the N*N matrix.
The use of these tables will increase the processing speed.
Another image forming device according to the present invention comprises analysis means for analyzing image data including vector data and data for setting a vector density (shade), means for converting the vector data to raster data after the analysis using an area gradation method that represents a halftone image with binary image data, and output means for outputting the raster data, the image forming device comprising means for generating (N*Nxe2x88x921) number of N*N dither matrices by rearranging an N*N dither matrix, on a row and column basis, (N*Nxe2x88x921) times and, at the same time, for combining the (N*Nxe2x88x921) number of N*N dither matrices with the original N*N dither matrix to form an (N*N)*(N*N) dither matrix; means for generating an (N*N)*(N*N) mask matrix by applying a given density value of a halftone image to the dither matrix as a result of the analysis of the analysis means; and means for generating a binary halftone image from multi-level image data via the (N*N)*(N*N) mask matrix. This device does not rearrange and enlarge the mask matrix obtained from the dither matrix but rearranges and enlarges the dither matrix per se. This device also gives the result similar to that described above.
In this case, instead of using the means for generating the (N*N)*(N*N) dither matrix, non-volatile storage means may be provided for storing (N*N)*(N*N) dither matrices pre-generated by that means.
An ink jet recording method according to the present invention is a method wherein a first print mode with a first print speed and a second print mode with a second print speed that is higher than the first print speed are provided, and wherein, in the second print mode, print dots are thinned out based on image data to be ink-jet recorded in such a way that the ink dots are not ejected successively and, an ink jet head is driven based on print dot data obtained after the thinning, while keeping a driving frequency of the ink jet head higher than that of the first print mode.
This method allows normal printing to be performed in the first print mode and, at the same time, high-speed printing to be performed in the second print mode without degrading print quality caused by ink ejection failures.
Preferably, the thinning operation is performed during the vector-to-raster data conversion after the analysis of the image data coded in a plotter description language. This allows software to perform the thinning operation more efficiently as compared with the method in which the thinning is performed on the image data expanded in the frame memory.
It is preferable that one dot is added to a line width of a vector if the line width of the vector is equal to or less than a predetermined number of dots. This prevents the vector from being fully lost due to the thinning operation.
An ink jet image forming device according to the present invention forms an image by ejecting ink dots on paper by an ink jet head that scans in a direction substantially perpendicular to a paper conveyance direction, the ink jet image forming device comprising means for setting a first print mode with a first print speed and a second print mode with a second print speed that is higher than the first print speed; means for receiving image data; print dot data creation means for creating print dot data to be supplied to the ink jet head based on the received image data; and head driving means for driving the ink jet head based on the print dot data; wherein, in the second print mode, the print dot data creation means thins out print dots based on the image data in such a way that the ink dots are not ejected successively in the head scan direction and, the ink jet head is driven based on the print dot data obtained after the thinning, while the head driving means makes a driving frequency of the ink jet head higher than that of the first print mode.
Preferably, the print dot data creation means comprises an interpreter that analyzes plotter description language data such as vector data and fill data and means for converting the data from vector data to raster data after the analysis made by the interpreter.
When a shade pattern for vector data or a mask pattern such as a fill pattern for polygon data is used, the print dot data creation means changes a mask pattern for the print dot data, which is not yet thinned, in such a way that the ink dots are not ejected successively in the head scan direction and the print dots are thinned using the changed mask pattern.
When image data is received directly, the print dot data creation means can perform a predetermined thinning for each unit of data of the print dot data, which is not yet thinned, in such a way that the ink dots are not ejected successively in the head scan direction.
The print dot data creation means include a table used to change the unit of data of input data to output data which has no ON dots successively occurring in the head scan direction. This table allows a data pattern that is input to the table to be changed quickly to a desired data pattern.
It is preferable that, when a line width of the vector in the received image data is equal to or less than a predetermined number of dots, the print dot data creation means adds one dot to the line width of the vector to create the print dot data.